package com.coffee.sku.service.sku.dao;

import com.coffee.sku.api.sku.query.SkuShopcarQuery;
import com.coffee.sku.api.sku.result.SkuCarListResult;
import com.coffee.sku.service.sku.bean.SkuShopcar;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface SkuShopcarDao {
    public SkuShopcar findById(Integer id);

    public SkuShopcar findByIdForUpdate(Integer id);

    public List<SkuShopcar> findByIds(@Param("idList") List<Integer> idList);

    public Integer count(@Param("param") SkuShopcarQuery param);

    public List<SkuShopcar> page(@Param("param") SkuShopcarQuery param, @Param("offset") Integer offset, @Param("rows") Integer rows);

    public SkuShopcar findFirst(@Param("param") SkuShopcarQuery param);

    public Integer insert(SkuShopcar param);

    Integer insertBatch(List<SkuShopcar> list);

    public void updateById(@Param("param") SkuShopcar param);

    public Integer deleteById(@Param("id") Integer id, @Param("merchantId") Integer merchantId);

    public Integer deleteByIds(@Param("idList")List<Integer> idList, @Param("merchantId") Integer merchantId);


    List<SkuCarListResult> getSkuCarListResult(Integer merchantId);

}